/* ========================================================================= */
/* ------------------------------------------------------------------------- */
/*!
  \file			PrpEdt.h
  \date			june 2010
  \author		TNick

  \brief		Contains the definition of EditorDel class and related


 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Please read ReadMe.txt and Licence.txt in root folder
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


*/
/* ------------------------------------------------------------------------- */
/* ========================================================================= */
#ifndef __PRPEDT_INC__
#define __PRPEDT_INC__
//
//
//
//
/*  INCLUDES    ------------------------------------------------------------ */


class		PrpMdl;
class		PrpNode;
class		PrpTpl;
class		PrpView;
class		EditorDel;

//#include	<QAbstractItemModel>
//#include	<QModelIndex>
//#include	<QVariant>
#include	<QStyledItemDelegate>
//#include	<QComboBox>
//#include	<QtGui>
//#include	<QObject>
//#include	"cc_l2d.h"


/*  INCLUDES    ============================================================ */
//
//
//
//
/*  CLASS    --------------------------------------------------------------- */

class EditorDel : public QStyledItemDelegate
{
	//
	//
	//
	//
	/*  DEFINITIONS    ----------------------------------------------------- */
	Q_OBJECT

	/*  DEFINITIONS    ===================================================== */
	//
	//
	//
	//
	/*  DATA    ------------------------------------------------------------ */

private:
	PrpView*	pFth;

	/*  DATA    ============================================================ */
	//
	//
	//
	//
	/*  FUNCTIONS    ------------------------------------------------------- */
public:

	EditorDel	(
			QObject *					parent = 0
												 );


	QWidget *	createEditor(
			QWidget *					parent,
			const QStyleOptionViewItem	&option,
			const QModelIndex			&index
			) const;

	void		setEditorData			(
			QWidget						*editor,
			const QModelIndex			&index
			) const;

	void		setModelData			(
			QWidget	*					editor,
			QAbstractItemModel *		model,
			const QModelIndex			&index
			) const;

	void		updateEditorGeometry	(
			QWidget	*					editor,
			const QStyleOptionViewItem &option,
			const QModelIndex			&index
			) const;

	QSize		sizeHint				(
			const QStyleOptionViewItem &option,
			const QModelIndex &index
			) const;

	void		paint					(
			QPainter *					painter,
			const QStyleOptionViewItem	&option,
			const QModelIndex			&index
			) const;


	/*  FUNCTIONS    ======================================================= */
	//
	//
	//
	//
};	/*	class EditorDel	*/

/*  CLASS    =============================================================== */
//
//
//
//

#endif // __PRPEDT_INC__
/* ------------------------------------------------------------------------- */
/* ========================================================================= */
